/**
 * 系统每月通报
 */
$(function(){
	notification.init();
});

var alarmType = "";
var notification = {
	param: {},
	init: function(){
		var me = this;
		me.initQueryTime();
		me.initTableTitle();
		me.initEvent();
		//默认查询
		me.tableReload(0);
		//me.tableReload(1);
	},
    initQueryTime:function(){
        var date = new Date();
        var preMonth = new Date(date.getFullYear(), date.getMonth(), 0);
        var mm = preMonth.getMonth()>9?(preMonth.getMonth()+1):('0'+(preMonth.getMonth()+1));
        $("#time-month").val(preMonth.getFullYear() + '-' + mm);
    },
	initEvent : function(){
		var me = this;
    	$("#queryBtn").on('click',function(){
    		me.tableReload();
    	});
    	$("#exportExcel").on('click',function(){
    		me.exportExcel();
    	});
        $("#confirmExport").click(function () {
        	me.exportComfirm();
        })
    },
    initTableTitle:function(){
    	var me = this;
        var getVehicleColor = function(vehicle_color){
        	if (vehicle_color=="") {
        		return "";
			}else{
				return global.carColor(vehicle_color);
			}
        };
		var toDriver = function(licence,driverName){
			return "<a target='_blank' href='" + appCtx + "/base/PubDriver/toAlarmDriver.html?licence=" + licence + "'>" + driverName + "</a>";
		};
    	$("#objTable1").flexigrid({
            dataType : 'json',
            colModel : me.getColModel1(),
            usepager : true,// 是否分页，默认为true。
			sortname : "id",// 第一次加载数据时排序列
			sortorder : "desc",// 第一次加载数据时排序类型
			usepager : false,// 是否分页，默认为true
			widthType:"%",
			nowrap: true, //是否不换行
			showToggleBtn : false,
			showTableToggleBtn : true,// 是否显示收起/打开按钮,默认不显示。
			rp : 1000,// 每页记录数，默认为10
			checkbox : false,// 是否要多选框,默认为false。
            height:270,
            width:$('#report1').width(),
            onSuccess:function(data){
            }
        });
    	$("#objTable2").flexigrid({
            dataType : 'json',
            colModel : me.getColModel2(),
            usepager : true,// 是否分页，默认为true。
			sortname : "id",// 第一次加载数据时排序列
			sortorder : "desc",// 第一次加载数据时排序类型
			usepager : false,// 是否分页，默认为true
			widthType:"%",
			nowrap: true, //是否不换行
			showToggleBtn : false,
			showTableToggleBtn : true,// 是否显示收起/打开按钮,默认不显示。
			rp : 1000,// 每页记录数，默认为10
			checkbox : false,// 是否要多选框,默认为false。
            height:270,
            width:$('#report2').width(),
        });
    	$("#objTable3").flexigrid({
            dataType : 'json',
            colModel : me.getColModel3(),
            usepager : true,// 是否分页，默认为true。
			sortname : "id",// 第一次加载数据时排序列
			sortorder : "desc",// 第一次加载数据时排序类型
			usepager : false,// 是否分页，默认为true
			widthType:"%",
			nowrap: true, //是否不换行
			showToggleBtn : false,
			showTableToggleBtn : true,// 是否显示收起/打开按钮,默认不显示。
			rp : 1000,// 每页记录数，默认为10
			checkbox : false,// 是否要多选框,默认为false。
            height:270,
            width:$('#report3').width(),
        });
    	$("#objTable4").flexigrid({
            dataType : 'json',
            colModel : me.getColModel4(),
            usepager : true,// 是否分页，默认为true。
			sortname : "id",// 第一次加载数据时排序列
			sortorder : "desc",// 第一次加载数据时排序类型
			usepager : false,// 是否分页，默认为true
			widthType:"%",
			nowrap: true, //是否不换行
			showToggleBtn : false,
			showTableToggleBtn : true,// 是否显示收起/打开按钮,默认不显示。
			rp : 1000,// 每页记录数，默认为10
			checkbox : false,// 是否要多选框,默认为false。
            height:270,
            width:$('#report4').width(),
        });
    	$("#objTable5").flexigrid({
            dataType : 'json',
            colModel : me.getColModel5(),
            usepager : true,// 是否分页，默认为true。
			sortname : "id",// 第一次加载数据时排序列
			sortorder : "desc",// 第一次加载数据时排序类型
			usepager : false,// 是否分页，默认为true
			widthType:"%",
			nowrap: true, //是否不换行
			showToggleBtn : false,
			showTableToggleBtn : true,// 是否显示收起/打开按钮,默认不显示。
			rp : 1000,// 每页记录数，默认为10
			checkbox : false,// 是否要多选框,默认为false。
            height:270,
            width:$('#report5').width(),
        });
    	$("#objTable6").flexigrid({
            dataType : 'json',
            colModel : me.getColModel6(),
            usepager : true,// 是否分页，默认为true。
			sortname : "id",// 第一次加载数据时排序列
			sortorder : "desc",// 第一次加载数据时排序类型
			usepager : false,// 是否分页，默认为true
			widthType:"%",
			nowrap: true, //是否不换行
			showToggleBtn : false,
			showTableToggleBtn : true,// 是否显示收起/打开按钮,默认不显示。
			rp : 1000,// 每页记录数，默认为10
			checkbox : false,// 是否要多选框,默认为false。
            height:270,
            width:$('#report6').width(),
        });
    	$("#objTable7").flexigrid({
            dataType : 'json',
            colModel : me.getColModel7(),
            usepager : true,// 是否分页，默认为true。
			sortname : "id",// 第一次加载数据时排序列
			sortorder : "desc",// 第一次加载数据时排序类型
			usepager : false,// 是否分页，默认为true
			widthType:"%",
			nowrap: true, //是否不换行
			showToggleBtn : false,
			showTableToggleBtn : true,// 是否显示收起/打开按钮,默认不显示。
			rp : 1000,// 每页记录数，默认为10
			checkbox : false,// 是否要多选框,默认为false。
            height:270,
            width:$('#report7').width(),
        });
    	$("#objTable8").flexigrid({
            dataType : 'json',
            colModel : me.getColModel8(),
            usepager : true,// 是否分页，默认为true。
			sortname : "id",// 第一次加载数据时排序列
			sortorder : "desc",// 第一次加载数据时排序类型
			usepager : false,// 是否分页，默认为true
			widthType:"%",
			nowrap: true, //是否不换行
			showToggleBtn : false,
			showTableToggleBtn : true,// 是否显示收起/打开按钮,默认不显示。
			rp : 1000,// 每页记录数，默认为10
			checkbox : false,// 是否要多选框,默认为false。
            height:270,
            width:$('#report8').width(),
        });
    },
    // 获取查询条件
    getParams: function () {
    	var me = this;
    	var date = $("#time-month").val();
        var params = [{
        	name: 'queryTime',
            value: date
        }];
        return params;
    },
	tableReload: function(){
		var me = this;
		$.ajax({
			url:appCtx+"report/notification/loadTableData.html?time="+new Date().getTime(),
			type:"post",
			data:me.getParams(),
			dataType:"json",
			success:function(data){
				var dataRow= {
						rows:"",
						totol:0,
						page:1
					};
	    		if(data.access.length==0){
			     	$("#objTable1").flexAddData(dataRow);
				}else{
			     	var dataRows= {
			     			rows:data.access,
			     			totol:data.access.length,
			     			page:1
			     		};
			     	$("#objTable1").flexAddData(dataRows);
				}
	    		if(data.online.length==0){
			     	$("#objTable2").flexAddData(dataRow);
				}else{
			     	var dataRows= {
			     			rows:data.online,
			     			totol:data.online.length,
			     			page:1
			     		};
			     	$("#objTable2").flexAddData(dataRows);
				}
	    		if(data.correct.length==0){
			     	$("#objTable3").flexAddData(dataRow);
				}else{
			     	var dataRows= {
			     			rows:data.correct,
			     			totol:data.correct.length,
			     			page:1
			     		};
			     	$("#objTable3").flexAddData(dataRows);
				}
				if(data.complete.length==0){
			     	$("#objTable4").flexAddData(dataRow);
				}else{
			     	var dataRows= {
			     			rows:data.complete,
			     			totol:data.complete.length,
			     			page:1
			     		};
			     	$("#objTable4").flexAddData(dataRows);
				}
			}
		});
		$.ajax({
			url:appCtx+"report/notification/loadTableDetailData.html?time="+new Date().getTime(),
			type:"post",
			data:me.getParams(),
			dataType:"json",
			success:function(data){
				var dataRow= {
						rows:"",
						totol:0,
						page:1
					};
	    		if(data.access.length==0){
			     	$("#objTable5").flexAddData(dataRow);
				}else{
			     	var dataRows= {
			     			rows:data.access,
			     			totol:data.access.length,
			     			page:1
			     		};
			     	$("#objTable5").flexAddData(dataRows);
				}
	    		if(data.online.length==0){
			     	$("#objTable6").flexAddData(dataRow);
				}else{
			     	var dataRows= {
			     			rows:data.online,
			     			totol:data.online.length,
			     			page:1
			     		};
			     	$("#objTable6").flexAddData(dataRows);
				}
	    		if(data.correct.length==0){
			     	$("#objTable7").flexAddData(dataRow);
				}else{
			     	var dataRows= {
			     			rows:data.correct,
			     			totol:data.correct.length,
			     			page:1
			     		};
			     	$("#objTable7").flexAddData(dataRows);
				}
				if(data.complete.length==0){
			     	$("#objTable8").flexAddData(dataRow);
				}else{
			     	var dataRows= {
			     			rows:data.complete,
			     			totol:data.complete.length,
			     			page:1
			     		};
			     	$("#objTable8").flexAddData(dataRows);
				}
			}
		});
	},
	exportExcel: function(){
    	var ent_options = $("#objTable1").getOptions();
		var ent_total = ent_options.total;
		
		var veh_options = $("#objTable2").getOptions();
		var veh_total = veh_options.total;
		if(veh_total==0&&ent_total==0){
			window.parent.global.ajaxLoading.pop('无生成数据!',false,2000);
			return;
		}
    	$("#exportModal").modal("show");
	},
	exportComfirm : function(){
    	var me = this;
		$("#exportModal").modal("hide");
		var date = $("#time-week").val();
    	var timeType = $("#timeType").val();
    	var alarmType = $("#alarmType").val();
    	var	areaIds = $("#queryArea").combotree("getValues");
    	if (areaIds.length<1) {
    		window.parent.global.ajaxLoading.pop('请选择区域后查询',false,2000);
    		return;
		}else{
			areaIds=areaIds.join(",");
		}
    	window.parent.global.ajaxLoading.pop('正在生成,请稍后.....',false,2000);
		var param =  {
    			timeType:'week',
    			queryTime: date,
    			queryArea:areaIds,
		};
		post(appCtx+"report/alarmSta/exportTableData.html",param);
    },
    getColModel1:function(){
    	return [{
        	display : '序号',
            width : 3,
            name : 'id',
            align : 'left',
            sortable:false,
        },{
            display : '业户名称',
            name : 'enterprise_name',
            width : 12,
            sortable:false,
            showtitle:true,
            align : 'left'
        },{
            display : '所属区域',
            name : 'vehicle_count',
            width : 5,
            align : 'left',
            sortable:false,
            showtitle:true,
        },{
            display : '车辆数',
            name : 'alarm_vehicle_count',
            width : 5,
            align : 'left',
            sortable:false,
        },{
        	display : '入网数',
        	name : 'alarm_type',
        	width : 5,
        	align : 'left',
        	sortable:false
        },{
            display : '入网率(%)',
            name : 'alarm_count',
            width : 5,
            align : 'left',
            sortable:false,
        },{
        	display : '危货车辆数',
        	name : 'per_vehicle_count',
        	width : 6,
        	align : 'left',
        	sortable:false
        },{
            display : '危货车入网数',
            name : 'remark',
            width : 7,
            align : 'left',
            sortable:false,
        },{
            display : '危货车入网率(%)',
            name : 'alarm_vehicle_count',
            width : 8,
            align : 'left',
            sortable:false,
        },{
            display : '客车辆数',
            name : 'alarm_vehicle_count',
            width : 5,
            align : 'left',
            sortable:false,
        },{
        	display : '客车入网数',
        	name : 'alarm_type',
        	width : 6,
        	align : 'left',
        	sortable:false
        },{
            display : '客车入网率(%)',
            name : 'alarm_count',
            width : 7,
            align : 'left',
            sortable:false,
        },{
            display : '旅游车辆数',
            name : 'alarm_vehicle_count',
            width : 6,
            align : 'left',
            sortable:false,
        },{
        	display : '旅游车入网数',
        	name : 'alarm_type',
        	width : 6,
        	align : 'left',
        	sortable:false
        },{
            display : '旅游车入网率(%)',
            name : 'alarm_count',
            width : 8,
            align : 'left',
            sortable:false,
        },{
            display : '上月通报情况',
            name : 'alarm_count',
            width : 6,
            align : 'left',
            sortable:false,
        }];
    },
    getColModel2:function(){
    	return  [{
        	display : '序号',
            width : 3,
            name : 'id',
            align : 'left',
            sortable:false,
        },{
            display : '业户名称',
            name : 'enterprise_name',
            width : 12,
            sortable:false,
            showtitle:true,
            align : 'left'
        },{
            display : '所属区域',
            name : 'vehicle_count',
            width : 5,
            align : 'left',
            sortable:false,
            showtitle:true,
        },{
            display : '车辆数',
            name : 'alarm_vehicle_count',
            width : 5,
            align : 'left',
            sortable:false,
        },{
        	display : '入网数',
        	name : 'alarm_type',
        	width : 5,
        	align : 'left',
        	sortable:false
        },{
            display : '入网率(%)',
            name : 'alarm_count',
            width : 5,
            align : 'left',
            sortable:false,
        },{
        	display : '危货车辆数',
        	name : 'per_vehicle_count',
        	width : 6,
        	align : 'left',
        	sortable:false
        },{
            display : '危货车入网数',
            name : 'remark',
            width : 7,
            align : 'left',
            sortable:false,
        },{
            display : '危货车入网率(%)',
            name : 'alarm_vehicle_count',
            width : 8,
            align : 'left',
            sortable:false,
        },{
            display : '客车辆数',
            name : 'alarm_vehicle_count',
            width : 5,
            align : 'left',
            sortable:false,
        },{
        	display : '客车入网数',
        	name : 'alarm_type',
        	width : 6,
        	align : 'left',
        	sortable:false
        },{
            display : '客车入网率(%)',
            name : 'alarm_count',
            width : 7,
            align : 'left',
            sortable:false,
        },{
            display : '旅游车辆数',
            name : 'alarm_vehicle_count',
            width : 6,
            align : 'left',
            sortable:false,
        },{
        	display : '旅游车入网数',
        	name : 'alarm_type',
        	width : 6,
        	align : 'left',
        	sortable:false
        },{
            display : '旅游车入网率(%)',
            name : 'alarm_count',
            width : 8,
            align : 'left',
            sortable:false,
        },{
            display : '上月通报情况',
            name : 'alarm_count',
            width : 6,
            align : 'left',
            sortable:false,
        }];
    },
    getColModel3:function(){
    	return [{
        	display : '序号',
            width : 3,
            name : 'id',
            align : 'left',
            sortable:false,
        },{
            display : '业户名称',
            name : 'enterprise_name',
            width : 12,
            sortable:false,
            showtitle:true,
            align : 'left'
        },{
            display : '所属区域',
            name : 'vehicle_count',
            width : 6,
            align : 'left',
            sortable:false,
            showtitle:true,
        },{
            display : '上线数',
            name : 'alarm_vehicle_count',
            width : 5,
            align : 'left',
            sortable:false,
        },{
        	display : '定位总数',
        	name : 'alarm_type',
        	width : 6,
        	align : 'left',
        	sortable:false
        },{
            display : '正确总数',
            name : 'alarm_count',
            width : 6,
            align : 'left',
            sortable:false,
        },{
        	display : '错误总数',
        	name : 'per_vehicle_count',
        	width : 6,
        	align : 'left',
        	sortable:false
        },{
            display : '时间错误',
            name : 'remark',
            width : 7,
            align : 'left',
            sortable:false,
        },{
            display : '经度错误数',
            name : 'alarm_vehicle_count',
            width : 7,
            align : 'left',
            sortable:false,
        },{
            display : '纬度错误数',
            name : 'alarm_vehicle_count',
            width : 7,
            align : 'left',
            sortable:false,
        },{
        	display : '时间格式错误',
        	name : 'alarm_type',
        	width : 7,
        	align : 'left',
        	sortable:false
        },{
            display : '高程错误数',
            name : 'alarm_count',
            width : 7,
            align : 'left',
            sortable:false,
        },{
            display : '方向角错误',
            name : 'alarm_vehicle_count',
            width : 7,
            align : 'left',
            sortable:false,
        },{
        	display : '速度错误',
        	name : 'alarm_type',
        	width : 7,
        	align : 'left',
        	sortable:false
        },{
            display : '数据合格率',
            name : 'alarm_count',
            width : 7,
            align : 'left',
            sortable:false,
        }];
    },
    getColModel4:function(){
    	return [{
        	display : '序号',
            width : 3,
            name : 'id',
            align : 'left',
            sortable:false,
        },{
            display : '业户名称',
            name : 'enterprise_name',
            width : 25,
            sortable:false,
            showtitle:true,
            align : 'left'
        },{
            display : '所属区域',
            name : 'vehicle_count',
            width : 12,
            align : 'left',
            sortable:false,
            showtitle:true,
        },{
            display : '上线数',
            name : 'alarm_vehicle_count',
            width : 10,
            align : 'left',
            sortable:false,
        },{
        	display : '当月轨迹完整的公里数',
        	name : 'alarm_type',
        	width : 15,
        	align : 'left',
        	sortable:false
        },{
            display : '当月总的公里数',
            name : 'alarm_count',
            width : 20,
            align : 'left',
            sortable:false,
        },{
        	display : '轨迹完整率',
        	name : 'per_vehicle_count',
        	width : 15,
        	align : 'left',
        	sortable:false
        }];
    },
    getColModel5:function(){
    	return [{
        	display : '序号',
            width : 5,
            name : 'id',
            align : 'left',
            sortable:false,
        },{
            display : '业户名称',
            name : 'enterprise_name',
            width : 22,
            sortable:false,
            showtitle:true,
            align : 'left'
        },{
            display : '所属区域',
            name : 'vehicle_count',
            width : 10,
            align : 'left',
            sortable:false,
            showtitle:true,
        },{
            display : '上线数',
            name : 'alarm_vehicle_count',
            width : 10,
            align : 'left',
            sortable:false,
        },{
        	display : '超速报警次数',
        	name : 'alarm_type',
        	width : 13,
        	align : 'left',
        	sortable:false
        },{
            display : '平均车辆超速报警次数(次/车/天)',
            name : 'alarm_count',
            width : 28,
            align : 'left',
            sortable:false,
        },{
        	display : '上月通报情况',
        	name : 'per_vehicle_count',
        	width : 12,
        	align : 'left',
        	sortable:false
        }];
    },
    getColModel6:function(){
    	return [{
        	display : '序号',
            width : 6,
            name : 'id',
            align : 'left',
            sortable:false,
        },{
            display : '车牌号码',
            name : 'enterprise_name',
            width : 14,
            sortable:false,
            showtitle:true,
            align : 'left'
        },{
            display : '车牌颜色',
            name : 'vehicle_count',
            width : 10,
            align : 'left',
            sortable:false,
            showtitle:true,
        },{
            display : '业户名称',
            name : 'alarm_vehicle_count',
            width : 20,
            align : 'left',
            sortable:false,
        },{
        	display : '所属区域',
        	name : 'alarm_type',
        	width : 12,
        	align : 'left',
        	sortable:false
        },{
            display : '所属平台简称',
            name : 'alarm_count',
            width : 13,
            align : 'left',
            sortable:false,
        },{
        	display : '超速报警次数',
        	name : 'per_vehicle_count',
        	width : 13,
        	align : 'left',
        	sortable:false
        },{
        	display : '上月通报情况',
        	name : 'per_vehicle_count',
        	width : 12,
        	align : 'left',
        	sortable:false
        }];
    },
    getColModel7:function(){
    	return [{
        	display : '序号',
            width : 5,
            name : 'id',
            align : 'left',
            sortable:false,
        },{
            display : '业户名称',
            name : 'enterprise_name',
            width : 22,
            sortable:false,
            showtitle:true,
            align : 'left'
        },{
            display : '所属区域',
            name : 'vehicle_count',
            width : 10,
            align : 'left',
            sortable:false,
            showtitle:true,
        },{
            display : '上线数',
            name : 'alarm_vehicle_count',
            width : 10,
            align : 'left',
            sortable:false,
        },{
        	display : '疲劳总时长(秒)',
        	name : 'alarm_type',
        	width : 16,
        	align : 'left',
        	sortable:false
        },{
            display : '平均疲劳驾驶时长(秒/车/天)',
            name : 'alarm_count',
            width : 25,
            align : 'left',
            sortable:false,
        },{
        	display : '上月通报情况',
        	name : 'per_vehicle_count',
        	width : 12,
        	align : 'left',
        	sortable:false
        }];
    },
	getColModel8:function(){
		return [{
        	display : '序号',
            width : 6,
            name : 'id',
            align : 'left',
            sortable:false,
        },{
            display : '车牌号码',
            name : 'enterprise_name',
            width : 14,
            sortable:false,
            showtitle:true,
            align : 'left'
        },{
            display : '车牌颜色',
            name : 'vehicle_count',
            width : 10,
            align : 'left',
            sortable:false,
            showtitle:true,
        },{
            display : '业户名称',
            name : 'alarm_vehicle_count',
            width : 20,
            align : 'left',
            sortable:false,
        },{
        	display : '所属区域',
        	name : 'alarm_type',
        	width : 12,
        	align : 'left',
        	sortable:false
        },{
            display : '所属平台简称',
            name : 'alarm_count',
            width : 13,
            align : 'left',
            sortable:false,
        },{
        	display : '疲劳时长(秒)',
        	name : 'per_vehicle_count',
        	width : 13,
        	align : 'left',
        	sortable:false
        },{
        	display : '上月通报情况',
        	name : 'per_vehicle_count',
        	width : 12,
        	align : 'left',
        	sortable:false
        }];
	}
};
